	.syntax unified
	.cpu cortex-m3
	.fpu softvfp
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 1
	.eabi_attribute 30, 6
	.eabi_attribute 34, 1
	.eabi_attribute 18, 4
	.thumb
	.file	"simpletwofunc.c"
	.section	.rodata
	.align	2
.LC0:
	.ascii	"1 incrementado es %u \012\000"
	.text
	.align	2
	.global	main_task
	.thumb
	.thumb_func
	.type	main_task, %function
main_task:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{lr}
	push	{lr}
	push	{lr}
	push	{r7}
	push	{r7}
	push	{r7}
	sub	sp, sp, #16
	add	r7, sp, #0
	str	r0, [r7, #4]
	movs	r3, #1
	str	r3, [r7, #12]
	ldr	r0, [r7, #12]
	bl	add
	str	r0, [r7, #12]
	movw	r0, #:lower16:.LC0
	movt	r0, #:upper16:.LC0
	ldr	r1, [r7, #12]
	bl	printk
	adds	r7, r7, #16
	mov	sp, r7
	@ sp needed
	b popr7lr
	.size	main_task, .-main_task
	.align	2
	.global	add
	.thumb
	.thumb_func
	.type	add, %function
add:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{lr}
	push	{lr}
	push	{lr}
	push	{r7}
	push	{r7}
	push	{r7}
	sub	sp, sp, #8
	add	r7, sp, #0
	str	r0, [r7, #4]
	ldr	r0, [r7, #4]
	bl	subadd
	mov	r3, r0
	mov	r0, r3
	adds	r7, r7, #8
	mov	sp, r7
	@ sp needed
	b popr7lr
	.size	add, .-add
	.align	2
	.global	subadd
	.thumb
	.thumb_func
	.type	subadd, %function
subadd:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	push	{r7}
	push	{r7}
	push	{r7}
	sub	sp, sp, #12
	add	r7, sp, #0
	str	r0, [r7, #4]
	ldr	r3, [r7, #4]
	adds	r3, r3, #1
	mov	r0, r3
	adds	r7, r7, #12
	mov	sp, r7
	@ sp needed
	b popr7
	.size	subadd, .-subadd
	.section	.rodata
	.align	2
.LC1:
	.ascii	"Bit flipping error \012\000"
	.text
	.align	2
	.global	error
	.thumb
	.thumb_func
	.type	error, %function

popr7:
	ldr	r4, [sp], #4
	ldr	r5, [sp], #4
	ldr	r6, [sp], #4
	cmp 	r4, r5
	itt	eq
	moveq r7, r4
	bxeq	lr
	cmp	r5, r6
	itt	eq
	moveq r7, r5
	bxeq	lr
	cmp	r6, r4
	itt	eq
	moveq r7, r4
	bxeq	lr
	b 	error

popr7lr:
	ldr	r4, [sp], #4
	ldr	r5, [sp], #4
	ldr	r6, [sp], #4
	cmp 	r4, r5
	itt	eq
	moveq r7, r4
	beq	nextreg
	cmp	r5, r6
	itt	eq
	moveq r7, r5
	beq	nextreg
	cmp	r6, r4
	itt	eq
	moveq r7, r4
	beq	nextreg
	b 	error
nextreg:
	ldr	r4, [sp], #4
	ldr	r5, [sp], #4
	ldr	r6, [sp], #4
	cmp 	r4, r5
	itt	eq
	moveq lr, r4
	bxeq	lr
	cmp	r5, r6
	itt	eq
	moveq lr, r5
	bxeq	lr
	cmp	r6, r4
	itt	eq
	moveq lr, r4
	bxeq	lr
	b 	error

error:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r7, lr}
	add	r7, sp, #0
	movw	r0, #:lower16:.LC1
	movt	r0, #:upper16:.LC1
	bl	printk
.L7:
	b	.L7
	.size	error, .-error
	.ident	"GCC: (GNU) 4.8.2 20131016 (RTEMS 4.11-RSB-d812ad5b46050709acd72d20c1a5456866fbfd3c-modified-1,gcc-4.8.2/newlib-2.1.0)"
